package com.study.controller.HRcontroller;

import java.util.Date;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import com.study.model.pojo.HRpojo.EmpTab;
import com.study.model.pojo.PSIpojo.SupplierTab;
import com.study.service.HRservice.SupplierService;

//1.解决跨域
@CrossOrigin
@RestController
@RequestMapping("/suppFind")
public class SupplierController {

	@Autowired
	SupplierService suppSer;
	
	/**
	 * 查询供应商所有信息
	 * @return
	 */
	@GetMapping("suppFindAll")
	public List<SupplierTab> findAll(){
		return suppSer.findAll();
	}
	
	/**
	 * 新增供应商
	 * @param sup
	 * @return
	 */
	@PostMapping("addSupp")
	public List<SupplierTab> AddSupplier(SupplierTab sup) {
		//创建员工对象，保存到供应商对象中，关联员工表id
		EmpTab emptab = new EmpTab();
		emptab.setEmpid("emp20170910001");//录入员id
		//录入时间和最后录入时间为系统默认时间
		sup.setSuppwrited(new Date());
		sup.setSuppedopd(new Date());
		//将员工对象保存到供应商对象中
		sup.setEmpTab(emptab);
		System.out.println(sup.getSuppname());
		//调用业务层的新增方法，进行保存，返回一个供应商实体对象
		SupplierTab addSupplier = suppSer.AddSupplier(sup);
		//再调用一下查询方法
		return suppSer.findAll();
	}
	
	/**
	 * 根据id修改状态
	 * @param param
	 * @return
	 */
	@PostMapping("upSuppState")
	public List<SupplierTab> updateSuppState(int param) {
		//根据前端传过来的供应商id，修改该条数据的状态
		SupplierTab updateSuppState = suppSer.updateSuppState(param);
		//再调用一下查询方法
		return suppSer.findAll();
	}
	
	/**
	 * 编辑供应商
	 * @param sup
	 * @return
	 */
	@PostMapping("editSup")
	public List<SupplierTab> updateSupp(SupplierTab sup) {
		//创建员工对象，保存到供应商对象中，保存供应商时关联员工
		EmpTab emptab = new EmpTab();
		
		//关联员工编号，目前为死值，后期整合时获取当前登录人的id
		emptab.setEmpid("emp20170910001");
		System.out.println(sup.getSuppname()+"----"+sup.getSuppremark()+"----"+sup.getSuppid()+"----"+sup.getSuppwrited());
		
		//设置最后录入时间为系统当前时间
		sup.setSuppedopd(new Date());
		//将员工对象保存到供应商对象中
		sup.setEmpTab(emptab);
		//调用业务层的方法，进行保存，返回一个保存后的实体对象
		SupplierTab editSupplier = suppSer.editSupp(sup);
		
		return suppSer.findAll();
	}
	
}
